package com.yonyou.iuap.jxzy.entity;

import java.io.Serializable;
import java.util.Date;
import java.util.List;
import java.util.Random;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;

import nc.vo.pub.lang.UFDouble;
import cn.hutool.core.date.DateUtil;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.yonyou.iuap.baseservice.bpm.entity.AbsBpmModel;
import com.yonyou.iuap.baseservice.print.entity.Printable;
import com.yonyou.iuap.baseservice.support.condition.Condition;
import com.yonyou.iuap.baseservice.support.generator.GeneratedValue;

/**
 * 进口废纸子表实体
 * @author wanggp
 * @date 2019年5月28日
 */
@JsonIgnoreProperties(ignoreUnknown=true)
@Table(name="jx_importpaper_h")
public class WastePaperHeadVO extends AbsBpmModel implements Serializable,Printable{


	@Id
	@GeneratedValue
	@Condition
	@Column(name="id")
	protected String id;//ID
	@Override
	public String getId() {
		return id;
	}
	@Override
	public void setId(Serializable id){
		this.id= id.toString();
		super.id = id;
	}
	public void setId(String id) {
		this.id = id;
	}

	@Override
	public String getMainBoCode() {
		return "jx_importpaper_h";
	}

	@Condition
	@Column(name="calPieceNumber")
	private Double calPieceNumber;        //计算件数

	@Condition
	@Column(name="totcalPieceNumber")
	private Double totcalPieceNumber;        //总计算件数

	@Condition
	@Column(name="unboxWeightPerPiece")
	private Double unboxWeightPerPiece;        //干包每件重
	
	@Condition
	@Column(name="cBDehydrantWeight")
	private Double cBDehydrantWeight;        //本箱扣水分重

	@Condition
	@Column(name="cBDecontaminationWeight")
	private Double cBDecontaminationWeight;        //本箱杂质扣重

	@Condition
	@Column(name="cBUnqualifiedPaperWeight")
	private Double cBUnqualifiedPaperWeight;        //本箱不合格纸重

	@Condition
	@Column(name="waterPackage")
	private String waterPackage;        //水分不合格件数合计
	

	@Condition
	@Column(name="waterDeductionRate")
	private String waterDeductionRate;        //水分不合格扣率合计
	
	@Condition
	@Column(name="waterReason")
	private String waterReason;        //水分不合格原因合计
	
	@Condition
	@Column(name="impurityPackage")
	private String impurityPackage;        //杂志不合格件数合计
	
	@Condition
	@Column(name="impurityDeductionRate")
	private String impurityDeductionRate;        //杂志不合格扣率合计
	
	@Condition
	@Column(name="impurityReason")
	private String impurityReason;        //杂志不合格原因合计
	
	@Condition
	@Column(name="unqualifyPackage")
	private String unqualifyPackage;        //不合格纸不合格件数合计
	
	@Condition
	@Column(name="unqualifyDeductionRate")
	private String unqualifyDeductionRate;        //不合格纸不合格扣率合计
	
	@Condition
	@Column(name="unqualifyReason")
	private String unqualifyReason;        //不合格纸不合格原因合计
	
	@Condition
	@Column(name="allUnqualifyPackage")
	private String allUnqualifyPackage;        //所有不合格纸件数合计
	
	public String getAllUnqualifyPackage() {
		return allUnqualifyPackage;
	}
	public void setAllUnqualifyPackage(String allUnqualifyPackage) {
		this.allUnqualifyPackage = allUnqualifyPackage;
	}
	public String getWaterPackage() {
		return waterPackage;
	}
	public void setWaterPackage(String waterPackage) {
		this.waterPackage = waterPackage;
	}
	public String getWaterDeductionRate() {
		return waterDeductionRate;
	}
	public void setWaterDeductionRate(String waterDeductionRate) {
		this.waterDeductionRate = waterDeductionRate;
	}
	public String getWaterReason() {
		return waterReason;
	}
	public void setWaterReason(String waterReason) {
		this.waterReason = waterReason;
	}
	public String getImpurityPackage() {
		return impurityPackage;
	}
	public void setImpurityPackage(String impurityPackage) {
		this.impurityPackage = impurityPackage;
	}
	public String getImpurityDeductionRate() {
		return impurityDeductionRate;
	}
	public void setImpurityDeductionRate(String impurityDeductionRate) {
		this.impurityDeductionRate = impurityDeductionRate;
	}
	public String getImpurityReason() {
		return impurityReason;
	}
	public void setImpurityReason(String impurityReason) {
		this.impurityReason = impurityReason;
	}
	public String getUnqualifyPackage() {
		return unqualifyPackage;
	}
	public void setUnqualifyPackage(String unqualifyPackage) {
		this.unqualifyPackage = unqualifyPackage;
	}
	public String getUnqualifyDeductionRate() {
		return unqualifyDeductionRate;
	}
	public void setUnqualifyDeductionRate(String unqualifyDeductionRate) {
		this.unqualifyDeductionRate = unqualifyDeductionRate;
	}
	public String getUnqualifyReason() {
		return unqualifyReason;
	}
	public void setUnqualifyReason(String unqualifyReason) {
		this.unqualifyReason = unqualifyReason;
	}
	public Double getCalPieceNumber() {
		return calPieceNumber;
	}
	public void setCalPieceNumber(Double calPieceNumber) {
		this.calPieceNumber = calPieceNumber;
	}
	public Double getTotcalPieceNumber() {
		return totcalPieceNumber;
	}
	public void setTotcalPieceNumber(Double totcalPieceNumber) {
		this.totcalPieceNumber = totcalPieceNumber;
	}
	public Double getUnboxWeightPerPiece() {
		return unboxWeightPerPiece;
	}
	public void setUnboxWeightPerPiece(Double unboxWeightPerPiece) {
		this.unboxWeightPerPiece = unboxWeightPerPiece;
	}

	public Double getcBDehydrantWeight() {
		return cBDehydrantWeight;
	}
	public void setcBDehydrantWeight(Double cBDehydrantWeight) {
		this.cBDehydrantWeight = cBDehydrantWeight;
	}
	public Double getcBDecontaminationWeight() {
		return cBDecontaminationWeight;
	}
	public void setcBDecontaminationWeight(Double cBDecontaminationWeight) {
		this.cBDecontaminationWeight = cBDecontaminationWeight;
	}
	public Double getcBUnqualifiedPaperWeight() {
		return cBUnqualifiedPaperWeight;
	}
	public void setcBUnqualifiedPaperWeight(Double cBUnqualifiedPaperWeight) {
		this.cBUnqualifiedPaperWeight = cBUnqualifiedPaperWeight;
	}

	@Condition
	@Column(name="meterPoint")
	private String meterPoint;        //计量点

	public void setMeterPoint(String meterPoint){
		this.meterPoint = meterPoint;
	}
	public String getMeterPoint(){
		return this.meterPoint;
	}
	
	@Condition
	@Column(name="pk_meterPoint")
	private String pk_meterPoint;        //计量点pk

	public String getPk_meterPoint() {
		return pk_meterPoint;
	}
	public void setPk_meterPoint(String pk_meterPoint) {
		this.pk_meterPoint = pk_meterPoint;
	}


	@Condition
	@Column(name="isQualify")
	private String isQualify;        //是否合格

	public void setIsQualify(String isQualify){
		this.isQualify = isQualify;
	}
	public String getIsQualify(){
		return this.isQualify;
	}

	@Condition
	@Column(name="materialVariety")
	private String materialVariety;        //物料品种

	public void setMaterialVariety(String materialVariety){
		this.materialVariety = materialVariety;
	}
	public String getMaterialVariety(){
		return this.materialVariety;
	}


	@Condition
	@Column(name="purchasing")
	private String purchasing;        //采购组织

	public void setPurchasing(String purchasing){
		this.purchasing = purchasing;
	}
	public String getPurchasing(){
		return this.purchasing;
	}


	@Condition
	@Column(name="tareWeightTime")
	private String tareWeightTime;        //称皮重时间

	public void setTareWeightTime(String tareWeightTime){
		this.tareWeightTime = tareWeightTime;
	}
	public String getTareWeightTime(){
		return this.tareWeightTime;
	}
	
	@Condition
	@Column(name="sampleNo")
	private String sampleNo;//样本号
	
	public String getSampleNo() {
		return sampleNo;
	}
	public void setSampleNo(String sampleNo) {
		this.sampleNo = sampleNo;
	}

	@Condition
	@Column(name="supplyUnit")
	private String supplyUnit;        //供货单位

	public void setSupplyUnit(String supplyUnit){
		this.supplyUnit = supplyUnit;
	}
	public String getSupplyUnit(){
		return this.supplyUnit;
	}


	@Condition
	@Column(name="applicationNo")
	private String applicationNo;        //进口明细申请单号

	
	public String getApplicationNo() {
		return applicationNo;
	}
	public void setApplicationNo(String applicationNo) {
		this.applicationNo = applicationNo;
	}


	@Condition
	@Column(name="customsNo")
	private String customsNo;        //海关单号

	public void setCustomsNo(String customsNo){
		this.customsNo = customsNo;
	}
	public String getCustomsNo(){
		return this.customsNo;
	}


	@Condition
	@Column(name="totalpackageno")
	private String totalPackageNo;        //总件数

	public void setTotalPackageNo(String totalPackageNo){
		this.totalPackageNo = totalPackageNo;
	}
	public String getTotalPackageNo(){
		return this.totalPackageNo;
	}


	@Condition
	@Column(name="radiationvalue")
	private String radiationValue;        //辐射值

	public void setRadiationValue(String radiationValue){
		this.radiationValue = radiationValue;
	}
	public String getRadiationValue(){
		return this.radiationValue;
	}


	@Condition
	@Column(name="grossweighttime")
	private String grossWeightTime;        //称毛重时间

	public void setGrossWeightTime(String grossWeightTime){
		this.grossWeightTime = grossWeightTime;
	}
	public String getGrossWeightTime(){
		return this.grossWeightTime;
	}


	@Condition
	@Column(name="totalboxno")
	private String totalBoxNo;        //总箱数

	public void setTotalBoxNo(String totalBoxNo){
		this.totalBoxNo = totalBoxNo;
	}
	public String getTotalBoxNo(){
		return this.totalBoxNo;
	}

	
	@Condition
	@Column(name="serialNo")
	private String serialNo;        //序列号

	public String getSerialNo() {
		return serialNo;
	}
	public void setSerialNo(String serialNo) {
		this.serialNo = serialNo;
	}

	@Condition
	@Column(name="pk_plan")
	private String pk_plan;        //收货通知单PK

	public void setPk_plan(String pk_plan){
		this.pk_plan = pk_plan;
	}
	public String getPk_plan(){
		return this.pk_plan;
	}


	@Condition
	@Column(name="pk_material")
	private String pk_material;        //物料PK

	public void setPk_material(String pk_material){
		this.pk_material = pk_material;
	}
	public String getPk_material(){
		return this.pk_material;
	}

	@Condition
	@Column(name="pk_supply")
	private String pk_supply;        //供应商pk

	public void setPk_supply(String pk_supply){
		this.pk_supply = pk_supply;
	}
	public String getPk_supply(){
		return this.pk_supply;
	}


	@Condition
	@Column(name="totalEntryNo")
	private String totalEntryNo;        //总来数(吨)

	public String getTotalEntryNo() {
		return totalEntryNo;
	}
	public void setTotalEntryNo(String totalEntryNo) {
		this.totalEntryNo = totalEntryNo;
	}


	@Condition
	@Column(name="purchasing_code")
	private String purchasing_code;        //采购组织编码

	public void setPurchasing_code(String purchasing_code){
		this.purchasing_code = purchasing_code;
	}
	public String getPurchasing_code(){
		return this.purchasing_code;
	}


	@Condition
	@Column(name="shortWeight")
	private String shortWeight;        //短重(吨)


	public String getShortWeight() {
		return shortWeight;
	}
	public void setShortWeight(String shortWeight) {
		this.shortWeight = shortWeight;
	}


	@Condition
	@Column(name="licensePlateNo")
	private String licensePlateNo;        //车牌号

	public void setLicensePlateNo(String licensePlateNo){
		this.licensePlateNo = licensePlateNo;
	}
	public String getLicensePlateNo(){
		return this.licensePlateNo;
	}


	@Condition
	@Column(name="goodsName")
	private String goodsName;        //货物名称

	public void setGoodsName(String goodsName){
		this.goodsName = goodsName;
	}
	public String getGoodsName(){
		return this.goodsName;
	}


	@Condition
	@Column(name="singlePieceWeight")
	private Double singlePieceWeight;        //单件重(吨)
	
	public Double getSinglePieceWeight() {
		return singlePieceWeight;
	}
	public void setSinglePieceWeight(Double singlePieceWeight) {
		this.singlePieceWeight = singlePieceWeight;
	}


	@Condition
	@Column(name="poundNo")
	private String poundNo;        //磅单号

	public void setPoundNo(String poundNo){
		this.poundNo = poundNo;
	}
	public String getPoundNo(){
		return this.poundNo;
	}

	@Condition
	@Column(name="wharf")
	private String wharf;        //码头
	
	public String getWharf() {
		return wharf;
	}
	public void setWharf(String wharf) {
		this.wharf = wharf;
	}

	@Condition
	@Column(name="wharf_code")
	private String wharf_code;        //码头编码

	public void setWharf_code(String wharf_code){
		this.wharf_code = wharf_code;
	}
	public String getWharf_code(){
		return this.wharf_code;
	}


	@Condition
	@Column(name="unpackNo")
	private String unpackNo;        //开包件数

	public void setUnpackNo(String unpackNo){
		this.unpackNo = unpackNo;
	}
	public String getUnpackNo(){
		return this.unpackNo;
	}


	@Condition
	@Column(name="caseNo")
	private String caseNo;        //箱号

	public void setCaseNo(String caseNo){
		this.caseNo = caseNo;
	}
	public String getCaseNo(){
		return this.caseNo;
	}


	@Condition
	@Column(name="inspectTime")
	private String inspectTime;        //检验时间

	public void setInspectTime(String inspectTime){
		this.inspectTime = inspectTime;
	}
	public String getInspectTime(){
		return this.inspectTime;
	}


	@Condition
	@Column(name="pk_purchasing")
	private String pk_purchasing;        //采购组织PK

	public void setPk_purchasing(String pk_purchasing){
		this.pk_purchasing = pk_purchasing;
	}
	public String getPk_purchasing(){
		return this.pk_purchasing;
	}


	@Condition
	@Column(name="pk_pound")
	private String pk_pound;        //磅单PK

	public void setPk_pound(String pk_pound){
		this.pk_pound = pk_pound;
	}
	public String getPk_pound(){
		return this.pk_pound;
	}


	@Condition
	@Column(name="grossWeight")
	private Double grossWeight;        //毛重(吨)


	public Double getGrossWeight() {
		return grossWeight;
	}
	public void setGrossWeight(Double grossWeight) {
		this.grossWeight = grossWeight;
	}


	@Condition
	@Column(name="netWeight")
	private Double netWeight;        //净重(吨)

	public Double getNetWeight() {
		return netWeight;
	}
	public void setNetWeight(Double netWeight) {
		this.netWeight = netWeight;
	}

	@Condition
	@Column(name="nnum")
	private String nnum;        //主数量

	public String getNnum() {
		return nnum;
	}
	public void setNnum(String nnum) {
		this.nnum = nnum;
	}

	@Condition
	@Column(name="planNo")
	private String planNo;        //收货通知单号

	public void setPlanNo(String planNo){
		this.planNo = planNo;
	}
	public String getPlanNo(){
		return this.planNo;
	}


	@Condition
	@Column(name="estimatedWeight")
	private Double estimatedWeight;        //估算重量(吨)

	public Double getEstimatedWeight() {
		return estimatedWeight;
	}
	public void setEstimatedWeight(Double estimatedWeight) {
		this.estimatedWeight = estimatedWeight;
	}


	@Condition
	@Column(name="estimatedTare")
	private Double estimatedTare;        //估算皮重(吨)


	public Double getEstimatedTare() {
		return estimatedTare;
	}
	public void setEstimatedTare(Double estimatedTare) {
		this.estimatedTare = estimatedTare;
	}


	@Condition
	@Column(name="supply_code")
	private String supply_code;        //供应商编码

	public void setSupply_code(String supply_code){
		this.supply_code = supply_code;
	}
	public String getSupply_code(){
		return this.supply_code;
	}

	@Condition
	@Column(name="supply_name")
	private String supply_name;        //供应商名称

	public String getSupply_name() {
		return supply_name;
	}
	public void setSupply_name(String supply_name) {
		this.supply_name = supply_name;
	}

	@Condition
	@Column(name="pk_wharf")
	private String pk_wharf;        //码头PK

	public void setPk_wharf(String pk_wharf){
		this.pk_wharf = pk_wharf;
	}
	public String getPk_wharf(){
		return this.pk_wharf;
	}


	@Condition
	@Column(name="heapNo")
	private String heapNo;        //堆号

	public void setHeapNo(String heapNo){
		this.heapNo = heapNo;
	}
	public String getHeapNo(){
		return this.heapNo;
	}
	
	@Condition
	@Column(name="heapName")
	private String heapName;        //堆号名称

	public String getHeapName() {
		return heapName;
	}
	public void setHeapName(String heapName) {
		this.heapName = heapName;
	}


	@Condition
	@Column(name="weiCompleMark")
	private String weiCompleMark;        //称重完成标记

	public String getWeiCompleMark() {
		return weiCompleMark;
	}
	public void setWeiCompleMark(String weiCompleMark) {
		this.weiCompleMark = weiCompleMark;
	}

	@Condition
	@Column(name="realNo")
	private String realNo;        //实来数(吨)

	public void setRealNo(String realNo){
		this.realNo = realNo;
	}
	public String getRealNo(){
		return this.realNo;
	}


	@Condition
	@Column(name="tareWeight")
	private Double tareWeight;        //皮重(吨)

	public Double getTareWeight() {
		return tareWeight;
	}
	public void setTareWeight(Double tareWeight) {
		this.tareWeight = tareWeight;
	}


	@Condition
	@Column(name="material_code")
	private String material_code;        //物料编码

	public void setMaterial_code(String material_code){
		this.material_code = material_code;
	}
	public String getMaterial_code(){
		return this.material_code;
	}
	
	@Condition
	@Column(name="isCheck")
	private String isCheck;        //检验状态
	
	public String getIsCheck() {
		return isCheck;
	}
	public void setIsCheck(String isCheck) {
		this.isCheck = isCheck;
	}

	@Condition
	@Column(name="imgUrl")
	private String[] imgUrl;//图片路径传app和iuap
	
	public String[] getImgUrl() {
		return imgUrl;
	}
	public void setImgUrl(String[] imgUrl) {
		this.imgUrl = imgUrl;
	}

	@Condition
	@Column(name="imgUrls")
	private String imgUrls;//图片路径

	public String getImgUrls() {
		return imgUrls;
	}
	public void setImgUrls(String imgUrls) {
		this.imgUrls = imgUrls;
	}

	@Condition
	@Column(name="settlementWeight")
	private Double settlementWeight;//货重
	
	
	public Double getSettlementWeight() {
		return settlementWeight;
	}
	public void setSettlementWeight(Double settlementWeight) {
		this.settlementWeight = settlementWeight;
	}

	@Condition
	@Column(name="deductWeight")
	private String deductWeight;//扣重
	

	public String getDeductWeight() {
		return deductWeight;
	}
	public void setDeductWeight(String deductWeight) {
		this.deductWeight = deductWeight;
	}


	@Condition
	@Column(name="auditStatus")
	private String auditStatus;//审核状态
	
	public String getAuditStatus() {
		return auditStatus;
	}
	public void setAuditStatus(String auditStatus) {
		this.auditStatus = auditStatus;
	}
	
	
	@Column(name="modifyuser")
    private String modifyuser;//修改人
    
    public String getModifyuser() {
		return modifyuser;
	}
	public void setModifyuser(String modifyuser) {
		this.modifyuser = modifyuser;
	}
	
	@Column(name="modifytime")
	private String modifytime;//修改时间

	public String getModifytime() {
		return modifytime;
	}
	public void setModifytime(String modifytime) {
		this.modifytime = modifytime;
	}

	@Column(name="auditor")
	private String auditor;//审核人
	
    public String getAuditor() {
		return auditor;
	}
	public void setAuditor(String auditor) {
		this.auditor = auditor;
	}
	
	@Column(name="auditortime")
	private String auditortime;//审核时间

	public String getAuditortime() {
		return auditortime;
	}
	public void setAuditortime(String auditortime) {
		this.auditortime = auditortime;
	}

	@Column(name="inspector")
	private String inspector;//检验人
	
	public String getInspector() {
		return inspector;
	}
	public void setInspector(String inspector) {
		this.inspector = inspector;
	}

	private List<WastePaperBodyVO> bodylist;
	
	
	
	public List<WastePaperBodyVO> getBodylist() {
		return bodylist;
	}
	public void setBodylist(List<WastePaperBodyVO> bodylist) {
		this.bodylist = bodylist;
	}
	@Override
	public String getBpmBillCode() {
		return  DateUtil.format(new Date(), "yyyyMMddHHmmss"+new Random().nextInt(10))   ;
	}
	
}
